package prueba;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author tlamatron
 */
import java.awt.Container;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class PuenteEstrecho extends JFrame {
    
   
    private JPanel panel1;
    private JTextArea area;
    private JScrollPane panel;
    private JLabel ModoConsola;
    Graphics g;
    Lienzo l;
    Graphics gr;
    Carro[] a;
    Puente p;
    
    public PuenteEstrecho(){ //En el constructor creamos la parte grafica

      super("Programacion Concurrente Y Paralela: Puente Estrecho");

      //Creamos un contenedor
      String terminalString;

      Container c = getContentPane(); 
      c.setLayout(null );

      panel1 = new JPanel(); //Lienzo
      ModoConsola = new JLabel(" Modo Grafico:");

      
      /**Creación del panel1 donde aparece el grafo: Lienzo*/
      panel1.setBounds(10, 10, 400, 400);
      panel1.setBorder(BorderFactory.createBevelBorder(1));
      add(panel1);
      crear();  //Llamamos para crear los hilos
      l = new Lienzo(a);
      p.setLienzo(l);
      setContentPane(l);

      //Colocamos el area
      terminalString = "\n\n";
      Font font1=new Font("Verdana",Font.PLAIN,12);
      area=new JTextArea();
      area.setFont(font1);
      area.setText(terminalString);
      area.setEditable(false);
      panel=new JScrollPane(area);
      

      //Agregamos la etiqueta modo consola:
      ModoConsola.setBounds(430,100,200,50);
      add(ModoConsola);

      //Agregamos el area
      //panel.setBounds(100,400,100,50);
      //add(panel);
   
      setVisible(true);
      setSize(430,200);
      setResizable(false);

    }

    //Colocando los carros para no crear muchos objetos
    public void crear()
    {
        int n;
        String dir; //Guarda dir norte-sur, sur-norte
        a=new Carro[10];
        p = new Puente();
	for( int i=0;i<10;i++ ){
           n=(int)(Math.random()*2); //crear los hilos e iniciarlos con una direccion aleatoria
           if(n==0){
               dir="Sur-Norte";
           }
           else{
               dir="Norte-Sur";
           }

	   a[i] = new Carro( p,i,dir,n);
	   a[i].start();
	}
        p.setAutos(a);
    }



    public static void main(String args[]){
      
        PuenteEstrecho app=new PuenteEstrecho();
    }

}
